package com.samshow.res.vo;

import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * Created by niwb on 2017/3/13.
 */
@ConfigurationProperties(prefix = "bxprogram")
public class DefaultBxTextProgram {
//------------page----------
    /**
     * 内容
     */
    private String text;
    /**
     * 背景色号
     */
    private int background;
    /**
     * 设定文字景色
     */
    private int foreground;
    /**
     * 字体名称
     */
    private String fontName;
    /**
     * 字号
     */
    private int fontSize;
    /**
     * 是否换行
     */
    private boolean lineBreak;

    /**
     * 水平对齐方式
     */
    private String horizontalAlignment;
    /**
     * 垂直对齐方式
     */
    private String verticalAlignment;
    /**
     * 设定首尾相连间隔。
     * >=0：前後訊息間隔的像素。
     * -2：前後訊息被隔離
     */
    private int headTailInterval;

    /**
     * 0: "随机显示"
     1: "静止显示"
     2: "快速打出"
     3: "向左移动"
     4: "向左连移"
     5: "向上移动"
     6: "向上连移"
     7: "闪烁"
     8: "飘雪"
     9: "冒泡"
     10: "中间移出"
     11: "左右移入"
     12: "左右交叉移入"
     13: "上下交叉移入"
     14: "画卷闭合"
     15: "画卷打开"
     16: "向左拉伸"
     17: "向右拉伸"
     18: "向上拉伸"
     19: "向下拉伸"
     20: "向左镭射"
     21: "向右镭射"
     22: "向上镭射"
     23: "向下镭射"
     24: "左右交叉拉幕"
     25: "上下交叉拉幕"
     26: "分散左拉"
     27: "水平百页"
     28: "垂直百页"
     29: "向左拉幕"
     30: "向右拉幕"
     31: "向上拉幕"
     32: "向下拉幕"
     33: "左右闭合"
     34: "左右对开"
     35: "上下闭合"
     36: "上下对开"
     37: "向右移动"
     38: "向右连移"
     39: "向下移动"
     40: "向下连移"
     41: "45度左旋"
     42: "180度左旋"
     43: "90度左旋"
     44: "45度右旋"
     45: "180度右旋"
     46: "90度右旋"
     47: "菱形打开"
     48: "菱形闭合"
     */
    private int displayStyle;
    /**
     * 设定速度等级。0：最快；63：最慢。
     */
    private int speed;

    /**
     * 停留时间
     */
    private int stayTime;

    //------------program----------

    /**
     * 是否显示节目边框
     */
    private boolean frameShow;
    /**
     * 边框显示速度，1 - 48
     */
    private int frameSpeed;
    /**
     * 载入內建边框特效底图。
     * - 内建效果编号，双基色 1 ~ 18，单基色 1 ~ 14，全彩 1 ~ 17。
     */
    private int loadFrameImage;
    /**
     * 设置边框显示效果。
     0：闪烁。
     1：顺时针转动。
     2：逆时钟转动。
     3：闪烁并顺时钟转动。
     4：闪烁并逆时钟转动。
     5：红绿交替闪烁。
     6：红绿交替转动。
     7：静止打出。
     */
    private int frameStyle;

    //------------area----------

    /**
     * X坐标
     */
    private int x;

    /**
     * Y坐标
     */
    private int y;

    /**
     * 宽度
     */
    private int width;

    /**
     * 高度
     */
    private int height;

    /**
     * 区域边框是否显示
     */
    private boolean areaFrameShow;

    /**
     * 边框特效底图
     */
    private int areaFrameImage;

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    }

    public int getBackground() {
        return background;
    }

    public void setBackground(int background) {
        this.background = background;
    }

    public int getForeground() {
        return foreground;
    }

    public void setForeground(int foreground) {
        this.foreground = foreground;
    }

    public String getFontName() {
        return fontName;
    }

    public void setFontName(String fontName) {
        this.fontName = fontName;
    }

    public int getFontSize() {
        return fontSize;
    }

    public void setFontSize(int fontSize) {
        this.fontSize = fontSize;
    }

    public boolean isLineBreak() {
        return lineBreak;
    }

    public void setLineBreak(boolean lineBreak) {
        this.lineBreak = lineBreak;
    }

    public String getHorizontalAlignment() {
        return horizontalAlignment;
    }

    public void setHorizontalAlignment(String horizontalAlignment) {
        this.horizontalAlignment = horizontalAlignment;
    }

    public String getVerticalAlignment() {
        return verticalAlignment;
    }

    public void setVerticalAlignment(String verticalAlignment) {
        this.verticalAlignment = verticalAlignment;
    }

    public int getHeadTailInterval() {
        return headTailInterval;
    }

    public void setHeadTailInterval(int headTailInterval) {
        this.headTailInterval = headTailInterval;
    }

    public int getDisplayStyle() {
        return displayStyle;
    }

    public void setDisplayStyle(int displayStyle) {
        this.displayStyle = displayStyle;
    }

    public int getSpeed() {
        return speed;
    }

    public void setSpeed(int speed) {
        this.speed = speed;
    }

    public boolean isFrameShow() {
        return frameShow;
    }

    public void setFrameShow(boolean frameShow) {
        this.frameShow = frameShow;
    }

    public int getFrameSpeed() {
        return frameSpeed;
    }

    public void setFrameSpeed(int frameSpeed) {
        this.frameSpeed = frameSpeed;
    }

    public int getLoadFrameImage() {
        return loadFrameImage;
    }

    public void setLoadFrameImage(int loadFrameImage) {
        this.loadFrameImage = loadFrameImage;
    }

    public int getFrameStyle() {
        return frameStyle;
    }

    public void setFrameStyle(int frameStyle) {
        this.frameStyle = frameStyle;
    }

    public int getX() {
        return x;
    }

    public void setX(int x) {
        this.x = x;
    }

    public int getY() {
        return y;
    }

    public void setY(int y) {
        this.y = y;
    }

    public int getWidth() {
        return width;
    }

    public void setWidth(int width) {
        this.width = width;
    }

    public int getHeight() {
        return height;
    }

    public void setHeight(int height) {
        this.height = height;
    }

    public boolean isAreaFrameShow() {
        return areaFrameShow;
    }

    public void setAreaFrameShow(boolean areaFrameShow) {
        this.areaFrameShow = areaFrameShow;
    }

    public int getAreaFrameImage() {
        return areaFrameImage;
    }

    public void setAreaFrameImage(int areaFrameImage) {
        this.areaFrameImage = areaFrameImage;
    }

    public int getStayTime() {
        return stayTime;
    }

    public void setStayTime(int stayTime) {
        this.stayTime = stayTime;
    }
}
